/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package controle;

import java.sql.SQLException;
import java.util.List;
import javax.enterprise.context.RequestScoped;
import javax.inject.Named;
import modelo.InstituicaoBO;
import persistencia.InstituicaoDAO;

/**
 *
 * @author rodrigo
 */
@Named(value = "instituicaoMB")
@RequestScoped
public class InstituicaoMB {

    private InstituicaoBO instituicaoBO;
    private List<InstituicaoBO> instituicoes;
    private InstituicaoDAO instituicaoDAO;
    private String palavraChave;

    public InstituicaoMB() throws SQLException {

        instituicaoBO = new InstituicaoBO();
        instituicaoBO.setStatus(1);
        instituicaoDAO = new InstituicaoDAO();
        instituicoes = this.listarInstituicoes();

    }

    public InstituicaoBO getInstituicaoBO() {
        return instituicaoBO;
    }

    public void setInstituicaoBO(InstituicaoBO instituicaoBO) {
        this.instituicaoBO = instituicaoBO;
    }

    public List<InstituicaoBO> getInstituicoes() {
        return instituicoes;
    }

    public void setInstituicoes(List<InstituicaoBO> instituicoes) {
        this.instituicoes = instituicoes;
    }

    public String getPalavraChave() {
        return palavraChave;
    }

    public void setPalavraChave(String palavraChave) {
        this.palavraChave = palavraChave;
    }

    public void novo() throws SQLException {

        instituicaoBO = new InstituicaoBO();
        instituicoes = this.listarInstituicoes();

    }

    public String salvar() throws SQLException {

        if (instituicaoBO.getIdInstituicao() > 0) {
            this.instituicaoDAO.alterar(instituicaoBO);
        } else {
            this.instituicaoDAO.inserir(instituicaoBO);
        }

        return "CadastrarInstituicao";

    }

    public void excluir(InstituicaoBO instituicaoBO) throws SQLException {
        this.instituicaoDAO.excluir(instituicaoBO);
        instituicoes = this.listarInstituicoes();
    }

    public String editar(InstituicaoBO instituicaoBO) throws SQLException {

        this.instituicaoBO = instituicaoBO;

        return "CadastrarInstituicao";
    }

    public List<InstituicaoBO> listarInstituicoes() throws SQLException {

        return this.instituicaoDAO.listarInstituicao("SELECT * FROM instituicao");
    }
    
    public boolean validarNome(String nome){
    
        if(nome.length() < 5)
        {
        return false;
        }
        else{
        return true;
        }
    
    }

}
